<template>
  <div id="container">

  </div>
</template>
<script>
import AMapLoader from '@amap/amap-jsapi-loader';
import { shallowRef } from '@vue/reactivity';
export default {

setup(){
  const map = shallowRef()
  return{ map }
},
  methods:{
    initMap(){
      AMapLoader.load({
        key:"7bfbe3ab215345f405c23b5eed760ca8",// 申请好的Web端开发者Key，首次调用 load 时必填
        version:"2.0",      // 指定要加载的 JSAPI 的版本，缺省时默认为 1.4.15
        plugins:['AMap.Geocoder'],       // 需要使用的的插件列表，如比例尺'AMap.Scale'等
      }).then((AMap)=>{
        this.map = new AMap.Map("container",{  //设置地图容器id
          viewMode:"3D",    //是否为3D地图模式
          zoom:5,           //初始化地图级别
          center:[105.602725,37.076636], //初始化地图中心点位置
        });
        // 为map绑定点击事件，获取经纬度
        this.map.on('click', (e)=>{
          let lng = e.lnglat.KL  // 经度
          let lat = e.lnglat.kT  // 纬度
          console.log({lng, lat})

          // 通过经纬度，访问高德地图服务，执行逆地理编码，获取位置信息       
          let geocoder = new AMap.Geocoder()
          geocoder.getAddress([lng, lat], (status, result)=>{
            console.log(status, result)
          })
        })
      }).catch(e=>{
        console.log(e);
      })
    },
  },
  mounted(){
    //DOM初始化完成进行地图初始化
    this.initMap();
  }
};
</script>

<style scoped lang="scss">
#container{
  padding:0px;
  margin: 0px;
  width: 100%;
  height: 500px;
}
</style>